This invention relates to the field of simulation systems, and in particular to a network simulator that includes models of wireless nodes or other forms of broadcast communications.
A network simulator is an analysis tool that provides information that is useful for network planning and evaluation. New or existing networks can be analyzed to determine network performance, identify communication bottlenecks, estimate throughput capacity, and so on. Proposed changes to networks can be evaluated via simulation before they are implemented, so that informed choices can be made among considered alternatives.
The simulation of a complex network consumes a substantial amount of computer resources. In a conventional network simulation, the transmission of a packet of information is simulated by the propagation of “events” from one node/element in the network to another. The generation of the packet at the source node is an event that is propagated to the first node along the communication path of this simulated packet. The arrival of this packet at the first node is an event that triggers the modeling of the propagation of this event through the first node, resulting in the generation of a subsequent transmission event from this node and a reception event at the next node along the communication path. This reception event triggers the modeling of the propagation of the event through the second node, and the subsequent transmission-reception events to the next node, and so on.
To accurately model the performance of a network, the propagation of events at each node in the network should represent the actual performance of the device(s) at the node. That is, for example, the propagation of a packet through a router should include receipt of the packet into a receive queue, decoding of the destination address, routing the packet to the appropriate output port, queuing the packet in the output queue, and so on. Additionally, different protocols use different processes and procedures for managing access to the communication channel, handling errors and retransmissions, and so on.
Prior attempts to reduce the time required to perform simulation have generally included the use of analytical models in lieu of the detailed modeling of the actual network devices. These analytic models are generally custom designed for a particular protocol, using simplified assumptions regarding the operating conditions, the environment, or the device model. Such simplified models, however, are often not sufficiently accurate for the desired level of network analysis. Some analytical models have been found to be sufficiently accurate, but to achieve this accuracy, the models are highly customized for the particular protocol.
When accurate simulation of wireless network performance is required, the device models are complex and difficult to parameterize, because the number of factors that can affect the communication of messages in a wireless network are substantially greater than those that might affect a similarly structured wired network. Complex models provide more fidelity in the results, at the cost of slowing simulation performance. To obtain accuracy and fidelity in wireless simulations, all or most aspects of medium access and radio characteristics must be modeled. Conventional techniques include detailed discrete event simulation where interaction among the elements at the medium access (MAC) layer and the physical layer is modeled as event interactions for all elements affected by a transmission. Because the wireless medium is a shared medium, the complexity of modeling such interactions increases significantly when the size of the network increases.
The modeling of wireless communications is further complicated by the random nature of the transmission channel, the susceptibility to interference, the receiver range dependency, and other factors. Additionally, each wireless protocol generally deals with channel access, reception verification, and retransmissions differently, requiring the development of a variety of complex models to support these various protocols. Each of these different models must also be tested to assure an accurate emulation of the performance of actual devices in a variety of environments, and each model must be maintained to support subsequent changes and enhancements to the modeled devices and protocols, including potential enhancements to the underlying modeling technique.
It would be advantageous to provide a simulation modeling technique for wireless devices that substantially reduces the time required to accurately model network devices. It would be particularly advantageous to reduce the time required to develop, test, and maintain accurate models of wireless devices. It would also be advantageous to provide a modeling architecture for the development of models suitable for use with all, or most, communication protocols within a given communication technology.
These advantages, and others, can be realized by a simulation system and method that distinguishes generic communication phenomenon and processes from protocol specific processes, and optimizing the modeling of the generic processes. The generic process components are designed such that each different protocol can be modeled using a particular arrangement of these components that is specific to the protocol. In this way, speed and/or accuracy improvements to the generic process components are reflected in each of such protocol models. If an accurate analytic model is not available for the generic process component, a prediction engine, such as a neural network, is preferably used. The prediction engine is trained using the existing detailed models of network devices. Once trained, the prediction engine is used to model the generic process, and the protocol model that includes the generic component is used in lieu of the detailed models, thereby saving substantial processing time. Assuming a proper identification of input and output parameters, the accuracy of the prediction engine is generally limited only by the quality and quantity of training.
Throughout the drawings, the same reference numerals indicate similar or corresponding features or functions. The drawings are included for illustrative purposes and are not intended to limit the scope of the invention.